package cn.edu.fzu.homemaking.mapper;

import cn.edu.fzu.homemaking.domain.entity.UserAddress;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author jiebin
 * @date 2023/4/4
 */

public interface AddressMapper {

    /**
     * 添加地址
     * @param userId
     * @param name
     * @param areaId
     * @param address
     * @param phone
     * @param email
     * @return
     */
    int insert(@Param("userId") Long userId, @Param("name") String name, @Param("areaId") Long areaId,
               @Param("address") String address, @Param("phone") String phone, @Param("email") String email);

    /**
     * 根据id删除地址
     * @param id
     * @return
     */
    int deleteById(@Param("id") Long id);

    /**
     * 更新地址信息
     * @param id
     * @param name
     * @param areaId
     * @param address
     * @param phone
     * @param email
     * @return
     */
    int updateById(@Param("id") Long id, @Param("name") String name, @Param("areaId") Long areaId,
                   @Param("address") String address, @Param("phone") String phone, @Param("email") String email);

    /**
     * 获取用户所有地址
     * @param userId
     * @return
     */
    List<UserAddress> list(@Param("userId") Long userId);

    /**
     * 根据id查询地址
     * @param id
     * @return
     */
    UserAddress selectById(@Param("id") Long id);
}
